package main

import "fmt"

// 检查用户能不能做某件事（比如删文件）
func canDo(userID, action string) bool {
	// 先查用户的角色：比如user_10086是“管理员”，user_10087是“普通员工”
	role := getUserRole(userID)
	// 不同角色能做的事
	roleActions := map[string][]string{
		"管理员":  {"删文件", "改数据", "查日志"},
		"普通员工": {"查数据", "改自己的资料"},
	}
	// 看看这个角色能不能做这件事
	for _, a := range roleActions[role] {
		if a == action {
			return true
		}
	}
	return false
}

// 模拟查用户角色（实际从数据库查）
func getUserRole(userID string) string {
	if userID == "user_10086" {
		return "管理员"
	}
	return "普通员工"
}

func main() {
	fmt.Println("管理员能删文件吗？", canDo("user_10086", "删文件"))  // 能
	fmt.Println("普通员工能删文件吗？", canDo("user_10087", "删文件")) // 不能
}
